diff --git a/post/drivers/flash.c b/post/drivers/flash.c
index e157d36..a1fcf1f 100644
--- a/post/drivers/flash.c
+++ b/post/drivers/flash.c
@@ -6,7 +6,7 @@
  * Licensed under the GPL-2 or later.
  */
 
-#if CFG_POST & CONFIG_SYS_POST_FLASH
+#if CFG_POST & CFG_SYS_POST_FLASH
 #include <common.h>
 #include <malloc.h>
 #include <post.h>
@@ -23,10 +23,10 @@
  *  - better seed pattern than 0x00..0xff
  */
 
-#ifndef CONFIG_SYS_POST_FLASH_NUM
-# define CONFIG_SYS_POST_FLASH_NUM 0
+#ifndef CFG_SYS_POST_FLASH_NUM
+# define CFG_SYS_POST_FLASH_NUM 0
 #endif
-#if CONFIG_SYS_POST_FLASH_START >= CONFIG_SYS_POST_FLASH_END
+#if CFG_SYS_POST_FLASH_START >= CFG_SYS_POST_FLASH_END
 # error "invalid flash block start/end"
 #endif
 
@@ -59,9 +59,9 @@
 
 	len = 0;
 	src = NULL;
-	info = &flash_info[CONFIG_SYS_POST_FLASH_NUM];
-	n_start = CONFIG_SYS_POST_FLASH_START;
-	n_end = CONFIG_SYS_POST_FLASH_END;
+	info = &flash_info[CFG_SYS_POST_FLASH_NUM];
+	n_start = CFG_SYS_POST_FLASH_START;
+	n_end = CFG_SYS_POST_FLASH_END;
 
 	for (n = n_start; n < n_end; ++n) {
 		ulong s_start, s_len, s_off;
diff --git a/post/drivers/i2c.c b/post/drivers/i2c.c
index 057454f..557d632 100644
--- a/post/drivers/i2c.c
+++ b/post/drivers/i2c.c
@@ -9,14 +9,14 @@
  *
  * For verifying the I2C bus, a full I2C bus scanning is performed.
  *
- * #ifdef CONFIG_SYS_POST_I2C_ADDRS
+ * #ifdef CFG_SYS_POST_I2C_ADDRS
  *   The test is considered as passed if all the devices and only the devices
  *   in the list are found.
- *   #ifdef CONFIG_SYS_POST_I2C_IGNORES
- *     Ignore devices listed in CONFIG_SYS_POST_I2C_IGNORES.  These devices
+ *   #ifdef CFG_SYS_POST_I2C_IGNORES
+ *     Ignore devices listed in CFG_SYS_POST_I2C_IGNORES.  These devices
  *     are optional or not vital to board functionality.
  *   #endif
- * #else [ ! CONFIG_SYS_POST_I2C_ADDRS ]
+ * #else [ ! CFG_SYS_POST_I2C_ADDRS ]
  *   The test is considered as passed if any I2C device is found.
  * #endif
  */
@@ -26,12 +26,12 @@
 #include <post.h>
 #include <i2c.h>
 
-#if CFG_POST & CONFIG_SYS_POST_I2C
+#if CFG_POST & CFG_SYS_POST_I2C
 
 static int i2c_ignore_device(unsigned int chip)
 {
-#ifdef CONFIG_SYS_POST_I2C_IGNORES
-	const unsigned char i2c_ignore_list[] = CONFIG_SYS_POST_I2C_IGNORES;
+#ifdef CFG_SYS_POST_I2C_IGNORES
+	const unsigned char i2c_ignore_list[] = CFG_SYS_POST_I2C_IGNORES;
 	int i;
 
 	for (i = 0; i < sizeof(i2c_ignore_list); i++)
@@ -45,7 +45,7 @@
 int i2c_post_test (int flags)
 {
 	unsigned int i;
-#ifndef CONFIG_SYS_POST_I2C_ADDRS
+#ifndef CFG_SYS_POST_I2C_ADDRS
 	/* Start at address 1, address 0 is the general call address */
 	for (i = 1; i < 128; i++) {
 		if (i2c_ignore_device(i))
@@ -59,7 +59,7 @@
 #else
 	unsigned int ret  = 0;
 	int j;
-	unsigned char i2c_addr_list[] = CONFIG_SYS_POST_I2C_ADDRS;
+	unsigned char i2c_addr_list[] = CFG_SYS_POST_I2C_ADDRS;
 
 	/* Start at address 1, address 0 is the general call address */
 	for (i = 1; i < 128; i++) {
@@ -94,4 +94,4 @@
 #endif
 }
 
-#endif /* CFG_POST & CONFIG_SYS_POST_I2C */
+#endif /* CFG_POST & CFG_SYS_POST_I2C */
diff --git a/post/drivers/rtc.c b/post/drivers/rtc.c
index cfed56b..cc7a498 100644
--- a/post/drivers/rtc.c
+++ b/post/drivers/rtc.c
@@ -26,7 +26,7 @@
 #include <post.h>
 #include <rtc.h>
 
-#if CFG_POST & CONFIG_SYS_POST_RTC
+#if CFG_POST & CFG_SYS_POST_RTC
 
 static int rtc_post_skip (ulong * diff)
 {
@@ -189,4 +189,4 @@
 	return 0;
 }
 
-#endif /* CFG_POST & CONFIG_SYS_POST_RTC */
+#endif /* CFG_POST & CFG_SYS_POST_RTC */
